home *** CD-ROM | disk | FTP | other *** search
/ Apple WWDC 1996 / WWDC96_1996 (CD).toast / Technology Materials / MacOS 8 Resources / Developer Tools / Mac OS 8 Interfaces & Libraries / Interfaces / IDLIncludes / AppleTalk.idl < prev    next >
Text File  |  1996-05-01  |  8KB  |  231 lines

  1. /*
  2.      File:        AppleTalk.idl
  3.  
  4.      Contains:    AppleTalk Interfaces.
  5.  
  6.      Version:    Technology:    System 7.5
  7.                  Release:    Universal Interfaces 3.0d3 on Copland DR1
  8.  
  9.      Copyright:    © 1984-1996 by Apple Computer, Inc.  All rights reserved.
  10.  
  11.      Bugs?:        If you find a problem with this file, send the file and version
  12.                  information (from above) and the problem description to:
  13.  
  14.                      Internet:    apple.bugs@applelink.apple.com
  15.                      AppleLink:    APPLE.BUGS
  16.  
  17. */
  18. #ifndef __APPLETALK_IDL__
  19. #define __APPLETALK_IDL__
  20.  
  21. #include <somobj.idl>
  22. #include <somcls.idl>
  23.  
  24. #ifndef __TYPES_IDL__
  25. #include <Types.idl>
  26. #endif
  27. #ifndef __OSUTILS_IDL__
  28. #include <OSUtils.idl>
  29. #endif
  30.  
  31. #ifdef __SOMIDL__
  32.  
  33. #if FOR_SYSTEM7_AND_SYSTEM8_COOPERATIVE
  34. /*
  35.     Real definition of EntityName is 3 PACKED strings of any length (32 is just an example). No
  36.     offests for Asm since each String address must be calculated by adding length byte to last string ptr.
  37.     In Pascal, String(32) will be 34 bytes long since fields never start on an odd byte unless they are 
  38.     only a byte long. So this will generate correct looking interfaces for Pascal and C, but they will not
  39.     be the same, which is OK since they are not used. 
  40. */
  41. typedef SOMLargeStruct            EntityName;                    /* Derived from a struct of 102 bytes in size */
  42.  
  43. typedef OpaquePtr                EntityPtr;                    /* Substituted OpaquePtr for ``EntityName*'' */
  44.  
  45. typedef SOMFourByteStruct        AddrBlock;                    /* Derived from a struct of 4 bytes in size */
  46.  
  47. #endif
  48. #if FOR_SYSTEM7_AND_SYSTEM8_DEPRECATED
  49. typedef SInt8                    ABCallType;
  50.  
  51. typedef UInt8                    ABProtoType;
  52.  
  53. typedef Byte                    ABByte;
  54.  
  55. typedef SOMFourByteStruct        LAPAdrBlock;                /* Derived from a struct of 4 bytes in size */
  56.  
  57.  
  58.  
  59. typedef OpaquePtr                ATQEntryPtr;                /* Substituted OpaquePtr for ``ATQEntry*'' */
  60.  
  61. typedef OpaquePtr ATalkTransitionEventProcPtr;
  62. typedef OpaquePtr ATalkTransitionEventUPP;
  63. typedef ATalkTransitionEventUPP ATalkTransitionEvent;
  64.  
  65. typedef SOMLargeStruct            ATQEntry;                    /* Derived from a struct of 10 bytes in size */
  66.  
  67. typedef SOMTwoByteStruct        RetransType;                /* Derived from a struct of 2 bytes in size */
  68.  
  69. typedef SOMLargeStruct            BDSElement;                    /* Derived from a struct of 12 bytes in size */
  70.  
  71. typedef OpaquePtr                BDSType;                    /* Substituted OpaquePtr for array of BDSElement of size 8 */
  72.  
  73. typedef OpaquePtr                BDSPtr;                        /* Substituted OpaquePtr for ``BDSElement*'' */
  74.  
  75. typedef char                    BitMapType;
  76.  
  77. typedef SOMLargeStruct            ATLAPRec;                    /* Derived from a struct of 20 bytes in size */
  78.  
  79. typedef OpaquePtr                ATLAPRecPtr;                /* Substituted OpaquePtr for ``ATLAPRec*'' */
  80.  
  81. typedef OpaquePtr                ATLAPRecHandle;                /* Substituted OpaquePtr for ``ATLAPRecPtr*'' */
  82.  
  83. typedef SOMLargeStruct            ATDDPRec;                    /* Derived from a struct of 26 bytes in size */
  84.  
  85. typedef OpaquePtr                ATDDPRecPtr;                /* Substituted OpaquePtr for ``ATDDPRec*'' */
  86.  
  87. typedef OpaquePtr                ATDDPRecHandle;                /* Substituted OpaquePtr for ``ATDDPRecPtr*'' */
  88.  
  89. typedef SOMLargeStruct            ATNBPRec;                    /* Derived from a struct of 26 bytes in size */
  90.  
  91. typedef OpaquePtr                ATNBPRecPtr;                /* Substituted OpaquePtr for ``ATNBPRec*'' */
  92.  
  93. typedef OpaquePtr                ATNBPRecHandle;                /* Substituted OpaquePtr for ``ATNBPRecPtr*'' */
  94.  
  95. typedef SOMLargeStruct            ATATPRec;                    /* Derived from a struct of 56 bytes in size */
  96.  
  97. typedef OpaquePtr                ATATPRecPtr;                /* Substituted OpaquePtr for ``ATATPRec*'' */
  98.  
  99. typedef OpaquePtr                ATATPRecHandle;                /* Substituted OpaquePtr for ``ATATPRecPtr*'' */
  100.  
  101. typedef SOMLargeStruct            AFPCommandBlock;            /* Derived from a struct of 14 bytes in size */
  102.  
  103.  
  104.  
  105.  
  106.  
  107.  
  108.  
  109. typedef OpaquePtr                MPPPBPtr;                    /* Substituted OpaquePtr for ``MPPParamBlock*'' */
  110.  
  111. typedef OpaquePtr                ATPPBPtr;                    /* Substituted OpaquePtr for ``ATPParamBlock*'' */
  112.  
  113. typedef OpaquePtr                XPPParmBlkPtr;                /* Substituted OpaquePtr for ``XPPParamBlock*'' */
  114.  
  115. typedef OpaquePtr MPPCompletionProcPtr;
  116. typedef OpaquePtr MPPCompletionUPP;
  117. typedef OpaquePtr ATPCompletionProcPtr;
  118. typedef OpaquePtr ATPCompletionUPP;
  119. typedef OpaquePtr XPPCompletionProcPtr;
  120. typedef OpaquePtr XPPCompletionUPP;
  121. typedef OpaquePtr AttnRoutineProcPtr;
  122. typedef OpaquePtr AttnRoutineUPP;
  123. typedef SOMLargeStruct            WDSElement;                    /* Derived from a struct of 6 bytes in size */
  124.  
  125. typedef SOMLargeStruct            NTElement;                    /* Derived from a struct of 104 bytes in size */
  126.  
  127. typedef SOMLargeStruct            NamesTableEntry;            /* Derived from a struct of 108 bytes in size */
  128.  
  129. typedef OpaquePtr MPPProtocolHandlerProcPtr;
  130. typedef OpaquePtr MPPProtocolHandlerUPP;
  131. typedef OpaquePtr DDPSocketListenerProcPtr;
  132. typedef OpaquePtr DDPSocketListenerUPP;
  133. /*
  134.     MPPProtocolHandlerProcs and  DDPSocketListenerProcs cannot be written 
  135.     in or called from a high-level language without the help of mixed mode 
  136.     or assembly glue because they use the following parameter-passing conventions:
  137.  
  138.     typedef Boolean (*MPPProtocolHandlerProcPtr)(Ptr SCCAddr1, Ptr SCCAddr2, 
  139.             Ptr MPPLocalVars, Ptr nextFreeByteInRHA, Ptr ReadPacketAndReadRestPtr, 
  140.             short numBytesLeftToReadInPacket);
  141.  
  142.         In:
  143.             =>    SCCAddr1                    A0.L
  144.             =>    SCCAddr2                    A1.L
  145.             =>    MPPLocalVars                A2.L
  146.             =>    nextFreeByteInRHA            A3.L
  147.             =>    ReadPacketAndReadRestPtr    A4.L
  148.             =>    numBytesLeftToReadInPacket    D1.W
  149.         Out:
  150.             <=    Boolean                        Z bit of CCR
  151.  
  152.     typedef Boolean (*DDPSocketListenerProcPtr)(Ptr SCCAddr1, Ptr SCCAddr2, 
  153.             Ptr MPPLocalVars, Ptr nextFreeByteInRHA, Ptr ReadPacketAndReadRestPtr, 
  154.             UInt8 packetDestinationNumber, short numBytesLeftToReadInPacket);
  155.  
  156.         In:
  157.             =>    SCCAddr1                    A0.L
  158.             =>    SCCAddr2                    A1.L
  159.             =>    MPPLocalVars                A2.L
  160.             =>    nextFreeByteInRHA            A3.L
  161.             =>    ReadPacketAndReadRestPtr    A4.L
  162.             =>    packetDestinationNumber        D0.B
  163.             =>    numBytesLeftToReadInPacket    D1.W
  164.         Out:
  165.             <=    Boolean                        Z bit of CCR
  166.  
  167. */
  168. typedef SOMLargeStruct            MPPparms;                    /* Derived from a struct of 28 bytes in size */
  169.  
  170. typedef SOMLargeStruct            LAPparms;                    /* Derived from a struct of 38 bytes in size */
  171.  
  172. typedef SOMLargeStruct            DDPparms;                    /* Derived from a struct of 38 bytes in size */
  173.  
  174. typedef SOMLargeStruct            NBPPtrs;                    /* Derived from a struct of 8 bytes in size */
  175.  
  176. typedef SOMLargeStruct            LookupConfirmParams;        /* Derived from a struct of 17 bytes in size */
  177.  
  178. typedef SOMLargeStruct            NBPparms;                    /* Derived from a struct of 44 bytes in size */
  179.  
  180. typedef SOMLargeStruct            SetSelfparms;                /* Derived from a struct of 30 bytes in size */
  181.  
  182. typedef SOMLargeStruct            NBPKillparms;                /* Derived from a struct of 32 bytes in size */
  183.  
  184. typedef SOMLargeStruct            GetAppleTalkInfoParm;        /* Derived from a struct of 78 bytes in size */
  185.  
  186. typedef SOMLargeStruct            ATalkClosePrepParm;            /* Derived from a struct of 32 bytes in size */
  187.  
  188. typedef SOMLargeStruct            MPPParamBlock;                /* Derived from a struct of 312 bytes in size */
  189.  
  190. typedef SOMLargeStruct            XPPPrmBlk;                    /* Derived from a struct of 346 bytes in size */
  191.  
  192. typedef SOMLargeStruct            ASPGetparmsBlk;                /* Derived from a struct of 34 bytes in size */
  193.  
  194. typedef SOMLargeStruct            ASPAbortPrm;                /* Derived from a struct of 32 bytes in size */
  195.  
  196. typedef SOMLargeStruct            ASPOpenPrm;                    /* Derived from a struct of 44 bytes in size */
  197.  
  198. typedef OpaquePtr                ASPOpenPrmPtr;                /* Substituted OpaquePtr for ``ASPOpenPrm*'' */
  199.  
  200. typedef SOMLargeStruct            AFPLoginPrm;                /* Derived from a struct of 200 bytes in size */
  201.  
  202. typedef SOMLargeStruct            XCallParam;                    /* Derived from a struct of 112 bytes in size */
  203.  
  204. typedef SOMLargeStruct            XPPParamBlock;                /* Derived from a struct of 768 bytes in size */
  205.  
  206. typedef SOMLargeStruct            ATPparms;                    /* Derived from a struct of 44 bytes in size */
  207.  
  208. typedef SOMLargeStruct            SendReqparms;                /* Derived from a struct of 52 bytes in size */
  209.  
  210. typedef SOMLargeStruct            ATPmisc1;                    /* Derived from a struct of 47 bytes in size */
  211.  
  212. typedef SOMLargeStruct            ATPmisc2;                    /* Derived from a struct of 48 bytes in size */
  213.  
  214. typedef SOMLargeStruct            Killparms;                    /* Derived from a struct of 48 bytes in size */
  215.  
  216. typedef SOMLargeStruct            ATPParamBlock;                /* Derived from a struct of 238 bytes in size */
  217.  
  218. /*
  219.     The following routines are obsolete and will not be supported on
  220.     PowerPC. Equivalent functionality is provided by the routines
  221.     above.
  222. */
  223. #if OLDROUTINENAMES && !GENERATINGCFM
  224. #endif
  225. #endif
  226.  
  227. #endif /* __SOMIDL__ */
  228.  
  229. #endif /* __APPLETALK_IDL__ */
  230.  
  231.